package com.shop.cloud.model.request;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.shop.cloud.model.request.RestfulRequest;

import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.ToString;

/**
 * @author Alex
 */
@ToString(callSuper = true)
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonIgnoreProperties(value = {"hibernateLazyInitializer", "handler", "fieldHandler"}, ignoreUnknown = true)
public class GetUserListRequest extends RestfulRequest {

    private static final long serialVersionUID = -3286520204644035655L;
    
    public static final int SEARCH_TYPE_USER_ID = 1;		// 搜索用户ID
    public static final int SEARCH_TYPE_USER_NAME = 2;	// 搜索用户姓名
    public static final int SEARCH_TYPE_PHONE = 3;		// 搜索手机号
    public static final int SEARCH_TYPE_CARD_NO = 4;		// 搜索会员卡号
    
    @JsonProperty("startTime")
    @ApiModelProperty(value = "", example = "", required = false)
    private String start_time;
    
    @JsonProperty("endTime")
    @ApiModelProperty(value = "", example = "", required = false)
    private String end_time;
    
    @JsonProperty("roleId")
    @ApiModelProperty(value = "", example = "", required = false)
    private String roleId;
    
    @JsonProperty("level")
    @ApiModelProperty(value = "", example = "", required = false)
    private String level;
    
    @JsonProperty("searchType")
    @ApiModelProperty(value = "", example = "", required = false)
    private int searchType;
    
    @JsonProperty("keyword")
    @ApiModelProperty(value = "", example = "", required = false)
    private String key;

	public String getStart_time() {
		return start_time;
	}

	public void setStart_time(String start_time) {
		this.start_time = start_time;
	}

	public String getEnd_time() {
		return end_time;
	}

	public void setEnd_time(String end_time) {
		this.end_time = end_time;
	}

	public String getLevel() {
		return level;
	}

	public void setLevel(String level) {
		this.level = level;
	}

	public int getSearchType() {
		return searchType;
	}

	public void setSearchType(int searchType) {
		this.searchType = searchType;
	}

	public String getKey() {
		return key;
	}

	public void setKey(String key) {
		this.key = key;
	}

	public String getRoleId() {
		return roleId;
	}

	public void setRoleId(String roleId) {
		this.roleId = roleId;
	}
}
